Method and control system for technical plants

ABSTRACT

A control system for a technical plant includes an operator station server and one operator station client, wherein a data model is implemented on the operator station server and the operator station client has display and control units, where the operator station server transmits visualization information representing the data model to the display unit that generates a graphical presentation of the received visualization information for an operator of the control system, receives commands relating to the data model from the operator and forwards them to the control unit, and where the control unit receives the commands, generates revised visualization information and transmits this information directly to the display unit to adjust the graphical presentation of the display unit, generates adjustment commands from the received commands and transmits them directly to the data model on the operator station server to adjust the data model in response to the operator commands.

BACKGROUND OF THE INVENTION 1. Field of the Invention

The invention relates to a technical plant, in particular amanufacturing or process plant, a control system for a technical plant,in particular a manufacturing or process plant, comprising at least oneoperator station server and one operator station, and relates to amethod for operating the control system.

2. Description of the Related Art

A control system of a technical plant is assumed to have at least oneoperator station server and one operator station client connectedthereto. The operator station server is configured to generate visualinformation and to forward this information to the operator stationclient so that a control system operator is presented with the visualinformation in the context of operating and monitoring the technicalplant.

If structural information of a control system of a technical plant, suchas a sequential function chart (SFC), for example, is created andmodified by the control system operator in a web browser acting as anoperator station client, time lags regularly occur for the followingreasons. The web browser sends a command triggered by the plant operatorto the operator station server connected to the operator station client.The operator station server implements the operation intended by thecommand in a data model stored on the operator station server.Thereupon, the operator station server generates revised visualizationinformation that is transmitted back to the web browser, i.e., theoperator station client.

The time that elapses between triggering of the command and the revisedvisualization information being received is not constant or is difficultto define. However, “drag & drop” functionality plays an important rolein manipulating graphical structures in the web browser. An objectgraphically displayed by the web browser is seemingly relocated by theoperator with the movement of the computer mouse: the object “attaches”to the mouse. For example, the web browser simulates the movement of thegraphical object when relocating the object.

If hierarchical, automatically ordered diagrams such as the SFCstructure in Siemens SIMATIC BATCH are changed, then the problem ofgraphic “pumping” may also occur. This means that the graphical objectsaround the target position of an object to be moved must also be movedto a new position to create space for the moved object. However, as longas the path “trigger command in web browser→transfer to operator stationserver→revise model on server→transfer back to web browser” has not yetbeen completed, the old state of the graphical representation isretained in the web browser after a command has been triggered or agraphical object has been moved, until the revised representationtransferred from operator station server is received by the web browser.The operator must therefore wait until the revised representation isdisplayed and must not trigger any new commands. Otherwise, when hetries to select a graphical object, he might get the object “pushed awayfrom his hand”. The intended illusion that “the object is in theoperator's hand (i.e., on the computer mouse) and he moves it to a newposition” is lost if the object does not remain at the new positionafter moving it, but is displayed briefly (until the above-describedpath has been completed) at the old position.

Current developments in the field of a control system that can beoperated by a web browser follow the Model-View-Controller (MVC) scheme1, which is illustrated in FIG. Here a (data) model 3 (Model) is storedon an operator station server 2. The operator station server 2 isconnected to an operator station client 4, upon which a web browser isimplemented. The operator station client 4 has a display unit 6 (View)and a control unit 8 (Controller). The operator station server 2transmits visualization information 5 relating to the data model 3 tothe display unit 6 of the operator station client 4 or more specificallyof the web browser. The web browser graphically displays thevisualization information coming from the model 3 for the control systemoperator.

The display unit 6 additionally provides the operator with a userinterface that enables the operator to trigger commands 7 such as thegraphical shifting of displayed graphical objects within the graphicaldisplay. The commands 7 are forwarded to the control unit 8 within theoperator station client 4. The control unit 8 processes the user'scommands 7 and in many cases transmits updated visualization informationdirectly to the display unit 6 (as indicated by the arrow 9). Most ofthese cases are simple formatting commands 7 from the operator, e.g.,changing a font or a font color used on the display unit 6.

More complex commands 7 such as the creation of new graphical objects orchanging the hierarchy between graphical objects pertain to thestructure of the model 3 on the operator station server 2. These aretransmitted to the (data) model 3 by the control unit 8 using anadjustment command 10—for the purpose of revising the (data) model 3 onthe operator station server 2. After the model 3 has been adjusted,updated visualization information 5 is in turn transmitted to thedisplay unit 6. Therefore, in certain combinations of circumstances, anoperator command 7 results in data having to be transferred twice acrossthe “server-client” boundary, which can lead to the disadvantagesexplained above.

It would be possible for the operations triggered by the command 7 to beperformed twice: on the one hand on the representation in the displayunit 6 via the direct feedback 9 from the control unit 8 and, on theother hand, on the operator station server 2 via the adjustment command10 to the model 3. As a result, the response to the operator's command 7would be immediate, i.e., without significant delay. However, the twooperations may diverge. This would mean that information is present inthe model 3 on the operator station server 2 that is different from theinformation displayed to the operator by means of the display unit 6.

Different implementations of the two operations or timing problems cantherefore cause an inconsistency between “Model” and “View” in the MVCscheme. This can mean, among other things, that in the time betweentriggering the command 7 and the revised visualization information beingreceived from the operator station server 2, the operator can select, inthe web browser display, certain graphical objects which according tothe revised model 3 on the operator station server 2 should actually nolonger be presented to the operator. This discrepancy can have anegative effect on the operability of the control system.

Direct transmission of the operator's command 7 and the thereby intendedoperations to the model 3 on the operator station server 2 (i.e.,without involvement of the control unit 8) would contradict theprinciples of the MVC model, because no direct modification of the model3 by the display unit 6 is provided here.

In addition, it would be possible to allow no direct feedback from thecontrol unit 8 to the display unit 6. Although this would eliminate anyinconsistency of the visualization information between display unit 6and model 3, the control system would have to sacrifice a significantdegree of performance, particularly because of the longer signal path.

SUMMARY OF THE INVENTION

It is an object of the invention is to provide a control system for atechnical plant, in particular a manufacturing or process plant, whichwill provide consistency of visualization information in the context ofa server-client connection in compliance with the Model-View-Controller(MVC) scheme and without significant loss of performance.

This and other objects and advantages are achieved in accordance withthe invention by technical plant, a control system for the technicalplant and by a method for operating the control system, where thecontrol system has at least one operator station server and operatorstation client, where a data model is implemented on the operatorstation server, and where the operator station client has a display unitand a control unit.

In accordance with the invention, the operator station server isconfigured to transmit visualization information representing the datamodel to the display unit of the operator station client, the displayunit of the operator station client is configured to generate agraphical presentation of the received visualization information for acontrol system operator, receive commands relating to the data modelfrom the operator and to forward them to the control unit, receive thecommands from the display unit, generate revised visualizationinformation from the received commands and to transmit this informationdirectly to the display unit in order to adjust the graphicalpresentation on the display unit, and the control unit is furtherconfigured to generate adjustment commands from the received commandsand to transmit these adjusted commands directly to the data model onthe operator station server to adjust the data model in response to theoperator's command.

The display unit of the control system, after receiving the revisedvisualization information from the control unit and subsequentlyadjusting the graphical presentation, is particularly configured togenerate a checksum specific to the current graphical presentation. Theoperator station server, after receiving the adjustment commands fromthe control unit and subsequent adjustment of the data model, isparticularly configured to generate and transmit to the display unit achecksum specific to the current data model, where the display unit isfurther configured to compare the checksum it generates with thechecksum transmitted by the operator station server to detect anyinconsistency between the graphical presentation on the display unit andthe data model on the operator station server, and, in the event of anyinconsistency, to request transmission of the visualization informationrepresenting the current data model from the operator station server.

In the present context, a control system is understood to be acomputer-aided technical system that includes functionalities for thedisplay, operation and control of a technical system such as amanufacturing or production plant. In the present case, the controlsystem comprises sensors for determining measured values and variousactuators. The control system additionally comprises process- orproduction-related components that are used to control the actuators orsensors. The control system has, among other things, components forvisualizing the technical plant and for engineering purposes. The termcontrol system also includes additional computing units for more complexcontrols and systems for data storage and processing.

The technical plant can be a plant from the process industry such as achemical, pharmaceutical, petrochemical plant or a plant from the foodand beverage industry. This also includes any plants from the productionindustry, factories in which, for example, cars or goods of all kindsare produced. Technical plants that are suitable for implementation ofthe method in accordance with the invention can also come from the fieldof energy generation. Wind turbines, solar plants or power plants forenergy production are also subsumed under the term technical plant.

Here, an “operator station server” means a server that centrallyacquires data from an operator communication and monitoring system aswell as usually alarm and measurement value archives of a control systemof a technical plant and makes them available to users. The operatorstation server usually establishes a communication link to automationsystems of the technical plant and passes on technical plant data“operator station clients” that are used to operate and observe theoperation of the individual functional elements of the technical plant.The operator station server itself may have client functions foraccessing data (archives, messages, tags, variables) of other operatorstation servers. Thus, images of operation of the technical plant can becombined on the operator station server with variables of other operatorstation servers (server-server communication). The operator stationserver can be a Siemens SIMATIC PCS 7 Industrial Workstation Server, butis not limited to such a server.

The “data model” is a linkage of different data which is combined in acommon model. It is implemented on the operator station server. In otherwords, the data model is stored in a storage device on the operatorstation server. This storage device can also be physically locatedoutside the operator station server, e.g., in a cloud environment.

With the control system in accordance with the invention, the displayunit, in conjunction with the control unit, can provide an immediateresponse to commands from the operator by appropriately adjusting thegraphical presentation with virtually no delay. At the same time, thegeneration of checksums and the comparison thereof provides certaintythat what is graphically presented to the operator in response to hiscommand is also correct, i.e., is congruent with the data model to bedisplayed on the operator station server. The control system inaccordance with the invention provides improved user-friendlinesswithout violating the MVC scheme. The control system can be operated“fluidly” and ensures that the visualization information graphicallypresented via the operator station client is consistent with theunderlying data model on the operator station server.

The algorithm for generating the checksums is advantageously establishedsuch that all the operator commands that produce a change in thegraphical presentation are also included in the checksum generation. A“message digest algorithm 5” (or MD5 for short) procedure isparticularly advantageous for this purpose. This procedure also takesinto account, among other things, pure graphical shifting operations bythe operator.

It is also an object of the invention to provide a technical plant, inparticular a manufacturing or process plant, having at least one controlsystem which is configured in accordance with the above-disclosedembodiments.

It is a further object of the invention to provide a method foroperating a control system for a technical plant, in particular amanufacturing or process plant, which has at least one operator stationserver and one operator station client, wherein a data model isimplemented on the operator station server, and wherein the operatorstation client has a display unit and a control unit.

The method comprising a) transmitting visualization informationrepresenting the data model from the operator station server to thedisplay unit of the operator station client, b) generating, by thedisplay unit of the operator station client, a graphical presentation ofthe received visualization information for an operator of the controlsystem, c) receiving operator commands to change the graphicalpresentation in the display unit, and forwarding of these generatedcommands to the control unit by the display unit, d) receiving thecommands from the display unit by the control unit, e) generatingrevised visualization information from the received visualizationinformation and direct transmission of the revised visualizationinformation to the display unit by the control unit to adjust thegraphical presentation of the display unit, f) generating adjustmentcommands from the received commands and directly transmitting theadjustment commands to the data model on the operator station server bythe control unit such that the operator station server adjusts the datamodel in response to the operator's commands, g) generating a checksumspecific to the current graphical presentation by the display unit afterthe display unit has received the revised visualization information fromthe control unit and has adjusted the graphical presentationaccordingly, i) generating a checksum specific to the current data modelby the operator station server after the operator station server hasreceived the adjustment commands from the control unit and has adjustedthe data model accordingly, j) transferring the checksum from theoperator station server to the display unit, k) comparing the checksumgenerated by the display unit with the checksum generated by theoperator station server to detect any inconsistency between thegraphical presentation of the display unit and the data model on theoperator station server, l) In the event of any inconsistency betweenthe two compared checksums, requesting visualization informationrepresenting the current data model from the operator station server bythe display unit, and m) transferring the visualization informationrepresenting the current data model from the operator station server tothe display unit and graphically presenting the visualizationinformation.

Other objects and features of the present invention will become apparentfrom the following detailed description considered in conjunction withthe accompanying drawings. It is to be understood, however, that thedrawings are designed solely for purposes of illustration and not as adefinition of the limits of the invention, for which reference should bemade to the appended claims. It should be further understood that thedrawings are not necessarily drawn to scale and that, unless otherwiseindicated, they are merely intended to conceptually illustrate thestructures and procedures described herein.

BRIEF DESCRIPTION OF THE DRAWINGS

The above-described features, characteristics and advantages of thisinvention, as well as the manner in which they are achieved, will becomeclearer and more comprehensible in conjunction with the followingdescription of the exemplary embodiment which will be explained ingreater detail with reference to the accompanying drawings, in which:

FIG. 1 shows an MVC scheme in accordance with the prior art;

FIG. 2 shows visualization information graphically presented by adisplay unit of an operator station client in accordance with theinvention;

FIG. 3 shows the visualization information from FIG. 2 accordance withan embodiment of the invention;

FIG. 4 shows the visualization information from FIG. 3 accordance withanother embodiment of the invention; and

FIG. 5 is a flowchart of the method in accordance with the invention.

DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

FIG. 2 shows visualization information 11 that corresponds to a datamodel 3 that is represented on an operator station server 2 (cf. alsoFIG. 5 ). The visualization information comprises ten graphical objects12 a, 12 b, 12 c, 12 d, 12 e, 12 f, 12 g, 12 h, 12 i, 12 j, which aregraphically linked by connecting lines 13. This can be, for example, thegraphical presentation of a sequential function chart (SFC) that allowsstate- or event-controlled execution of production processes based onsequence chains in a technical plant designed as a process plant.

An operator now wants to move an object 12 a (bottom left in the drawingarea in FIG. 2 ) graphically upward in the drawing area so that it ispositioned below the object 12 h. FIG. 3 shows that the object 12 a isto be moved upwards along a direction 14, while the objects with theassociated connecting lines 13 are to be moved downward along anopposite direction 15 to provide the object 12 a with the necessaryspace within the visualization information 11. FIG. 4 shows the object12 a in its new position.

With reference to FIG. 5 , it will now be explained which operations runautomatically in the background while the operator gives the (move)command explained above. FIG. 5 shows a control system 16 comprising anoperator station server 2 and, connected thereto, an operator stationclient 4. A data model 3 has been implemented in the operator stationserver 2. The operator station client 4 has a display unit 6 and acontrol unit 8.

In a first step l, the operator station server 2 transmits visualizationinformation 11 representing the data model 3 to the display unit 6 ofthe operator station client 4.

In a second step II, the display unit 6 generates the graphicalpresentation of the received visualization information 11, as shown inFIG. 2 , for the operator of the control system 16.

The display unit 6 receives a (move) command from the operator and, in athird step III, forwards this command to the control unit 8 of theoperator station client 8.

After the control unit 8 has received the command from the display unit6, the control unit 8 generates revised visualization information 11from the received commands and transmits the revised visualizationinformation 11 directly to the display unit 6 in order to adjust thegraphical presentation of the display unit 6 (fourth step IV).

The control unit 8 additionally generates adjustment commands from thereceived commands and, in a fifth step V, transmits them directly to thedata model 3 on the operator station server 2 so that the operatorstation server 2 adjusts the data model 3 in response to the operator'scommand.

In a sixth step VI, the display unit 6 generates a checksum specific tothe current graphical presentation after the display unit 6 has receivedthe revised visualization information 11 from the control unit 8 and hasthen adjusted the graphical presentation accordingly.

In a seventh step VII, which can occur before, after or in parallel withthe sixth step VI, the operator station server 2 generates a checksumspecific to the current data model 3 revised on the basis of theadjustment command after the operator station server 2 has received theadjustment commands from the control unit 8 and has adjusted the datamodel 3 accordingly.

In an eighth step VIII, the checksum is transferred from the operatorstation server 2 to the display unit 6.

In a ninth step IX, the display unit 6 compares the checksum generatedby the display unit 6 with the checksum generated by the operatorstation server 2 in order to detect any inconsistency between thegraphical presentation of the display unit 6 and the data model 3 on theoperator station server 2.

It should be understood the above-described method steps can be repeatedas often as required.

In the event of an inconsistency between the two compared checksums, thedisplay unit 6 can request visualization information 11 representing thecurrent data model 3 from the operator station server 2, whereupon thevisualization information 11 representing the current data model 3 istransferred from the operator station server 2 to the display unit 6 andthe (correct) visualization information 11 is graphically presented. Forreasons of clarity, the last method steps are not indicated in FIG. 5 .It should also be understood these method steps can also be repeated asoften as required in the event of inconsistencies.

Thus, while there have been shown, described and pointed out fundamentalnovel features of the invention as applied to a preferred embodimentthereof, it will be understood that various omissions and substitutionsand changes in the form and details of the methods described and thedevices illustrated, and in theft operation, may be made by thosespilled in the art without departing from the spirit of the invention.For example, it is expressly intended that all combinations of thoseelements and/or method steps which perform substantially the samefunction in substantially the same way to achieve the same results arewithin the scope of the invention. Moreover, it should be recognizedthat structures and/or elements and/or method steps shown and/ordescribed in connection with any disclosed form or embodiment of theinvention may be incorporated in any other disclosed or described orsuggested form or embodiment as a general matter of design choice. It isthe intention, therefore, to be limited only as indicated by the scopeof the claims appended hereto.

What is claimed is:
 1. A control system for a technical plant,comprising: at least one operator station server; and at least oneoperator station client, a data model being implemented on the at leastone operator station server, and the at least one operator stationclient including a display unit and a control unit; wherein the at leastone operator station server is configured to transmit visualizationinformation representing the data model to the display unit of the atleast one operator station client; wherein the display unit of the atleast one operator station client is configured to generate a graphicalpresentation of the received visualization information for an operatorof the control system; wherein the display unit of the at least oneoperator station client is further configured to receive commandsrelating to the data model from the operator and to forward saidreceived commands to the control unit; wherein the control unit isconfigured to receive the commands from the display unit; wherein thecontrol unit is further configured to generate revised visualizationinformation from the received commands and to transmit said revisedvisualization information directly to the display unit to adjust thegraphical presentation of the display unit; wherein the control unit isfurther configured to generate adjustment commands from the receivedcommands and to transmit said adjustment commands directly to the datamodel on the at least one operator station server to adjust the datamodel in response to the operator's commands; wherein the display unitis further configured to generate a checksum specific to the currentgraphical presentation after receiving the revised visualizationinformation from the control unit and subsequent adjustment of thegraphical presentation; wherein the at least one operator station serveris configured to generate and transmit to the display unit a checksumspecific to the current data model after receiving the adjustmentcommands from the control unit and subsequent adjustment of the datamodel; wherein the display unit is further configured to compare thechecksum generated by the display unit with the checksum transmitted bythe operator station server to detect a possible inconsistency betweenthe graphical presentation of the display unit and the data model on theat least one operator station server, and further configured to requesttransmission of the visualization information representing the currentdata model from the at least one operator station server in an event ofany inconsistency; wherein said visualization information representingthe data model is graphically presented as a sequential function chart(SFC) which allows state- or event-controlled execution of productionprocesses based on sequence chains in the technical plant; and whereinthe at least one operator station server is further configured toutilize a “message-digest algorithm 5” to generate the checksums by thedisplay unit and the at least one operator station server, puregraphical shifting operations being taken into account.
 2. The controlsystem as claimed in claim 1, wherein the display unit is furtherconfigured to utilize the “message-digest algorithm 5” to generate thechecksums by the display unit and the at least one operator stationserver.
 3. The control system as claimed in claim 1, wherein thetechnical plant comprises a manufacturing or process plant.
 4. Atechnical plant including at least one control system as claimed inclaim
 1. 5. A method for operating a control system for a technicalplant including at least one operator station server and at least oneoperator station client, a data model being implemented on the at leastone operator station server and the at least one operator station clientincluding a display unit and a control unit, the method comprising: a)transmitting visualization information representing the data model tothe display unit of the at least one operator station client by the atleast one operator station server; b) generating, by the display unit ofthe at least one operator station client, a graphical presentation ofthe received visualization information for an operator of the controlsystem; c) receiving operator commands to change the graphicalpresentation in the display unit, and forwarding said received operatorcommands to the control unit by the display unit; d) receiving theforwarded operator commands from the display unit by the control unit;e) generating revised visualization information from the receivedoperator commands and directly transmitting the revised visualizationinformation to the display unit by the control unit to adjust thegraphical presentation of the display unit; f) generating adjustmentcommands from the received commands and transmitting the generatedadjustment commands directly to the data model on the at least oneoperator station server by the control unit such that the operatorstation server adjusts the data model in response to the operatorcommands; g) generating, by the display unit, a checksum specific to thecurrent graphical presentation after the display unit has received therevised visualization information from the control unit and has adjustedthe graphical presentation accordingly; i) generating, by the operatorstation server, a checksum specific to the current data model after theoperator station server has received the adjustment commands from thecontrol unit and has then adjusted the data model accordingly; j)transferring the checksum from the at least one operator station serverto the display unit; k) comparing the checksum generated by the displayunit with the checksum generated by the operator station server todetect any inconsistency between the graphical presentation of thedisplay unit and the data model on the at least one operator stationserver; l) requesting visualization information representing the currentdata model from the at least one operator station server by the displayunit in an event of inconsistency between the compared checksums; m)transferring the visualization information representing the current datamodel from the at least one operator station server to the display unitand graphically presenting the visualization information; wherein saidvisualization information representing the data model is graphicallypresented as a sequential function chart (SFC) which allows state- orevent-controlled execution of production processes based on sequencechains in the technical plant; and wherein a “message digest algorithm5” is utilized for each generation of the checksums by the at least oneoperator station server, pure graphical shifting operations being takeninto account.
 6. The method as claimed in claim 5, wherein the“message-digest algorithm 5” is further utilized for each generation ofthe checksums by the display unit.
 7. The method as claimed in claim 5,wherein the technical plant comprises a manufacturing or process plant.